Efficient Propagation of Disjunctive Constraints using Watched Literals
نویسندگان
چکیده
Efficient constraint propagation is important for all constraint solvers. One of the key reasons that Boolean Satisfiability solvers are often more efficient than constraint solvers is that they can propagate disjunctive constraints efficiently. This propagation is undertaken using the watched literals mechanism. In a recent paper Gent et al. showed how watched literals can be used in constraint programming, to propagate simple disjunctive constraints. This paper shows through experiment the deficiencies in the existing methods of implementing the disjunction of a set constraints in CP solvers and presents a new algorithm based on watched literals which when applicable massively outperforms all existing algorithms. In particular we show that if variables are not duplicated between the different constraints being considered disjunctively, and a Generalised Arc Consistent (GAC) propagator is known for each of the constraints; then GAC propagation can be efficiently achieved across the entire disjunctive constraint. We end by showing how this new propagation mechanism can be used to produce efficient models of combinatorial problems, including that of finding Hamming codes.
منابع مشابه
Watched Literals for Constraint Propagation in Minion
Efficient constraint propagation is crucial to any constraint solver. We show that watched literals, already a great success in the propositional satisfiability community, can also be used to provide highly efficient implementations of constraint propagators. We describe in detail three important aspects of watched literals as we apply them to constraints, and we describe how they are implement...
متن کاملWatching Clauses in Quantified Boolean Formulae
The introduction of watched literals[1], a lazy data structure for satisfiability (SAT) search algorithms, has resulted in great improvements in the run-time of SAT solvers. Watched literals keeps track of two literals remaining in a clause so as to detect when a clause becomes unit or empty. Watched literals is non-trivial to implement in QBF search. Quantified Boolean Formulae (QBFs) are SAT ...
متن کاملOptimal Implementation of Watched Literals and More General Techniques
I prove that an implementation technique for scanning lists in backtracking search algorithms is optimal. The result applies to a simple general framework, which I present: applications include watched literal unit propagation in SAT and a number of examples in constraint satisfaction. Techniques like watched literals are known to be highly space efficient and effective in practice. When implem...
متن کاملFast Incremental Unit Propagation by Unifying Watched - literals and Local Repair
The propositional satisfiability problem has been studied extensively due to its theoretical significance and applicability to a variety of fields including diagnosis, autonomous control, circuit testing, and software verification. In these applications, satisfiability problem solvers are often used to solve a large number of problems that are essentially the same and only differ from each othe...
متن کاملGeneralizations of Watched Literals for Backtracking Search
The technique of watching two literals per clause to determine when a clause becomes a unit clause was introduced recently in the Chaff satisfiability program. That program does not perform either equivalent-literal detection or binary-clause detection. We describe a generalization of the technique that handles the tracking necessary to support equivalent-literal detection and binary-clause det...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2008